package com.ruoyi.houses.domain;

import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.annotation.TableField;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName;
import java.io.Serializable;
import java.math.BigDecimal;
import java.util.Date;
import java.util.List;

import lombok.Data;

/**
 * 房产信息表
 * @TableName property
 */
@TableName(value ="property")
@Data
public class Property implements Serializable {
    /**
     * 房产ID
     */
    @TableId(type = IdType.AUTO)
    private Integer propertyId;

    /**
     * 房产名称，如宝顺豪苑、三亚凤凰苑等
     */
    private String propertyName;

    /**
     * 区域ID
     */
    private Integer areaId;

    /**
     * 单价
     */
    private BigDecimal price;

    /**
     * 总价（出售时使用）
     */
    private BigDecimal totalPrice;

    /**
     * 月租价格（出租时使用）
     */
    private BigDecimal monthlyRent;

    /**
     * 建筑面积
     */
    private BigDecimal buildingArea;

    /**
     * 房产类型ID，关联property_type表
     */
    private Integer propertyTypeId;

    /**
     * 房产状态ID，关联property_status表
     */
    private Integer propertyStatusId;

    /**
     * 装修ID，关联decoration表
     */
    private Integer decorationId;

    /**
     * 是否低容积，0否1是
     */
    private Integer isLowDensity;

    /**
     * 是否项目在建，0否1是
     */
    private Integer isUnderConstruction;

    /**
     * 是否独家房源，0否1是
     */
    private Integer isExclusive;

    /**
     * 优惠信息，如全款89折优惠
     */
    private String discount;

    /**
     * 开盘日期
     */
    private Date openingDate;

    /**
     * 房源ID
     */
    private Integer sourceId;
    /**
     * 房源名称
     */
    @TableField(exist = false)
    private String sourceName;

    /**
     * 区域名称
     */
    @TableField(exist = false)
    private String areaName;
    /**
     *房产类型
     */
    @TableField(exist = false)
    private String typeName;
    /**
     * 房产状态
     */
    @TableField(exist = false)
    private String statusName;
    /**
     * 装修类型
     */
    @TableField(exist = false)
    private String decorationName;

    /**
     * 小区名称，如三亚凤凰苑
     */
    @TableField(exist = false)
    private String communityName;

    /**
     * 小区均价
     */
    @TableField(exist = false)
    private BigDecimal averagePrice;

    /**
     * 建筑年代
     */
    @TableField(exist = false)
    private Date constructionYear;

    /**
     * 小区地址
     */
    @TableField(exist = false)
    private String communityAddress;

    /**
     * 开发商
     */
    @TableField(exist = false)
    private String developer;

    /**
     * 物业公司
     */
    @TableField(exist = false)
    private String propertyCompany;

    /**
     * 物业费
     */
    @TableField(exist = false)
    private BigDecimal propertyFee;

    /**
     * 产权年限
     */
    @TableField(exist = false)
    private Integer propertyRightYear;

    /**
     * 物业类型
     */
    @TableField(exist = false)
    private String propertyType;

    /**
     * 占地面积
     */
    @TableField(exist = false)
    private BigDecimal landArea;

    /**
     * 建筑类型
     */
    @TableField(exist = false)
    private String buildingType;

    /**
     * 车位情况
     */
    @TableField(exist = false)
    private String parkingSituation;

    /**
     * 总建筑面积
     */
    @TableField(exist = false)
    private BigDecimal buildingAreaTotal;






    @TableField(exist = false)
    private static final long serialVersionUID = 1L;
}